The following example applies protocol 4 to confirm workshops’ provenance groups.
Protocol 4 consist in:
Last, search for outliers and re-do protocol excluding outliers.
NOTE: The initial procedures must be ran at least once before any protocol can be applied.
As protocol 3, protocol 4 performs PCoA on a distance matrix calculated with Extended Gower coefficient of dissimilarity, combining Euclidean distances on transformed compositional data (50%) and RRD on ranked petrographic data (50%).
prot4_2d <- apply_ordination(cleanAmphorae[!isShipwreck,],
"4", # select protocol 4
exception_columns = excep_cols,
variable_tags = varCode,
coda_override = chemVars16,
coda_transformation = "CLR")
prot4_3d <- apply_ordination(cleanAmphorae[!isShipwreck,],
"4", # select protocol 4
exception_columns = excep_cols,
variable_tags = varCode,
coda_override = chemVars16,
coda_transformation = "CLR",
dimensions = 3)However, protocol 4 uses a finer selection of petrographic variables, which are considered indicative of provenance (raw materials) rather than technology. Compare the number of variables in protocol 3 and 4:
| Protocol 3 | Protocol 4 |
|---|---|
| 78 | 59 |
We may want to simplify the names of the transformed variables before plotting them in a biplot.
prot4_2d <- simplify_coda_names(prot4_2d)
prot4_3d <- simplify_coda_names(prot4_3d)With protocol 4, we can test the provenance assigned to the amphorae samples based only on provenance-specific variables.
prot4_tests <- test_groups(prot4_2d$dist_matrix,
factor_list$ProvGroup)
#> [1] "initiating test batch..."
#> [1] "vegan::anosim done."
#> [1] "vegan::betadisper done."
#> [1] "vegan::permutest done."
#> [1] "vegan::adonis done."
#> [1] "Test batch completed."These tests were explained in protocol 1.
The details on how to create biplots is already explained in protocol 1. As protocol 3, protocol 4 only generates one kind of projection (RRD, PCoA).
arrows_label_adj <- rbind(c(.5,1),c(0,0),c(1,.5),c(0,1),c(1,0),
c(0,.5),c(.5,1),c(1,.5),c(.5,1))
row.names(arrows_label_adj) <- c("CaO","S4","S7","S8","Ce",
"Nb","Al2O3","S11","Fe2O3")
biplot2d3d::biplot_2d(prot4_2d,
ordination_method = "PCoA",
invert_coordinates = c (TRUE,FALSE),
ylim = c(-.35,.32),
point_type = "point",
groups = factor_list$ProvGroup,
group_color = color_list$ProvGroup,
group_label_cex = 0.6,
arrow_mim_dist = .5,
arrow_label_cex = 0.6,
arrow_fig = c(.6,.95,0,.35),
arrow_label_adj_override = arrows_label_adj,
subtitle = prot4_2d$sub2D,
test_text = prot4_tests$text(prot4_tests),
test_cex = 0.8,
test_fig = c(0, 0.5, 0.62, .99),
fitAnalysis_fig = c(0,.7,.05,.5),
output_type = "preview")protocol 4
biplot2d3d::biplot_3d(prot4_3d,
ordination_method = "PCoA",
point_type = "point",
groups = factor_list$FabricGroup,
group_color = color_list$FabricGroup,
group_representation = "stars",
star_centroid_radius = 0,
star_label_cex = .8,
arrow_min_dist = .5,
arrow_body_length = .025,
subtitle = prot4_3d$sub3D,
test_text = prot4_tests$text(prot4_tests),
test_cex = 1.25,
test_fig = c(0, 0.5, 0.65, .99),
view_zoom = 0.9)
biplot2d3d::animation(directory = directories$prot4,
file_name = "Prot4_Biplot3D")Prot4_Biplot3D.gif